[INFO] fetching crate arroy 0.6.3...
[INFO] checking arroy-0.6.3 against try#a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399 for pr-145770
[INFO] extracting crate arroy 0.6.3 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate arroy 0.6.3
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate arroy 0.6.3
[INFO] tweaked toml for crates.io crate arroy 0.6.3 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate arroy 0.6.3 on toolchain a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate arroy 0.6.3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8756431c567b1b9df740e1059d5a0f4f36e8dc55f5b5e389c2d1f1b1d1d6ff89
[INFO] running `Command { std: "docker" "start" "-a" "8756431c567b1b9df740e1059d5a0f4f36e8dc55f5b5e389c2d1f1b1d1d6ff89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8756431c567b1b9df740e1059d5a0f4f36e8dc55f5b5e389c2d1f1b1d1d6ff89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8756431c567b1b9df740e1059d5a0f4f36e8dc55f5b5e389c2d1f1b1d1d6ff89", kill_on_drop: false }`
[INFO] [stdout] 8756431c567b1b9df740e1059d5a0f4f36e8dc55f5b5e389c2d1f1b1d1d6ff89
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 54fbe30601e6f9e4df931fbe748de7202a9c0bd3a4eb9be26b7233ccf21f6701
[INFO] running `Command { std: "docker" "start" "-a" "54fbe30601e6f9e4df931fbe748de7202a9c0bd3a4eb9be26b7233ccf21f6701", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling libc v0.2.174
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling siphasher v0.3.11
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling rustix v0.38.43
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]    Compiling phf_shared v0.11.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling cc v1.2.27
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking heed-traits v0.20.0
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling heed v0.22.0
[INFO] [stderr]    Compiling thiserror v2.0.12
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]     Checking heed-types v0.21.0
[INFO] [stderr]     Checking tracing-core v0.1.34
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking pin-project-lite v0.2.16
[INFO] [stderr]    Compiling phf_generator v0.11.2
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]    Compiling anyhow v1.0.95
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling quote v1.0.38
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking convert_case v0.8.0
[INFO] [stderr]     Checking clap_builder v4.5.24
[INFO] [stderr]     Checking nohash v0.2.0
[INFO] [stderr]     Checking similar v2.6.0
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]     Checking min-max-heap v1.3.0
[INFO] [stderr]     Checking humantime v2.1.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]    Compiling syn v2.0.95
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking ordered-float v3.9.2
[INFO] [stderr]     Checking ordered-float v4.6.0
[INFO] [stderr]     Checking synchronoise v1.0.1
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking seize v0.5.0
[INFO] [stderr]     Checking wait-timeout v0.2.0
[INFO] [stderr]     Checking memmap2 v0.9.5
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking console v0.15.8
[INFO] [stderr]     Checking papaya v0.2.3
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]     Checking parking_lot v0.12.3
[INFO] [stderr]     Checking insta v1.42.0
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking bitflags v2.9.1
[INFO] [stderr]     Checking indexmap v2.10.0
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking steppe v0.4.0
[INFO] [stderr]     Checking tempfile v3.15.0
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking rusty-fork v0.3.0
[INFO] [stderr]     Checking env_filter v0.1.2
[INFO] [stderr]     Checking env_logger v0.11.6
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling phf_macros v0.11.2
[INFO] [stderr]    Compiling bytemuck_derive v1.8.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.30
[INFO] [stderr]    Compiling thiserror-impl v2.0.12
[INFO] [stderr]    Compiling enum-iterator-derive v1.4.0
[INFO] [stderr]    Compiling clap_derive v4.5.24
[INFO] [stderr]    Compiling derive_arbitrary v1.4.1
[INFO] [stderr]     Checking enum-iterator v2.1.0
[INFO] [stderr]    Compiling phf v0.11.2
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]    Compiling doxygen-rs v0.4.2
[INFO] [stderr]     Checking arbitrary v1.4.1
[INFO] [stderr]    Compiling lmdb-master-sys v0.2.5
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking bytemuck v1.21.0
[INFO] [stderr]     Checking roaring v0.10.9
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking clap v4.5.24
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking proptest v1.6.0
[INFO] [stderr]     Checking instant-distance v0.6.1
[INFO] [stderr]     Checking hannoy v0.0.4
[INFO] [stderr]     Checking arroy v0.6.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/binary_quantized_cosine.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NodeHeaderBinaryQuantizedCosine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/binary_quantized_cosine.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / /// The header of `BinaryQuantizedCosine` leaf nodes.
[INFO] [stdout] 22 | | #[repr(C)]
[INFO] [stdout] 23 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 24 | | pub struct NodeHeaderBinaryQuantizedCosine {
[INFO] [stdout] 25 | |     norm: f32,
[INFO] [stdout] 26 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/binary_quantized_euclidean.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NodeHeaderBinaryQuantizedEuclidean {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/binary_quantized_euclidean.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / /// The header of `BinaryQuantizedEuclidean` leaf nodes.
[INFO] [stdout] 23 | | #[repr(C)]
[INFO] [stdout] 24 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 25 | | pub struct NodeHeaderBinaryQuantizedEuclidean {
[INFO] [stdout] 26 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 27 | |     bias: f32,
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/binary_quantized_manhattan.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NodeHeaderBinaryQuantizedManhattan {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/binary_quantized_manhattan.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / /// The header of BinaryQuantizedEuclidean leaf nodes.
[INFO] [stdout] 22 | | #[repr(C)]
[INFO] [stdout] 23 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 24 | | pub struct NodeHeaderBinaryQuantizedManhattan {
[INFO] [stdout] 25 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 26 | |     bias: f32,
[INFO] [stdout] 27 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/cosine.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct NodeHeaderCosine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/cosine.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / /// The header of Cosine leaf nodes.
[INFO] [stdout] 20 | | #[repr(C)]
[INFO] [stdout] 21 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 22 | | pub struct NodeHeaderCosine {
[INFO] [stdout] 23 | |     norm: f32,
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/dot_product.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NodeHeaderDotProduct {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/dot_product.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / /// The header of DotProduct leaf nodes.
[INFO] [stdout] 23 | | #[repr(C)]
[INFO] [stdout] 24 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 25 | | pub struct NodeHeaderDotProduct {
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | |     norm: f32,
[INFO] [stdout] 29 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/euclidean.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct NodeHeaderEuclidean {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/euclidean.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / /// The header of Euclidean leaf nodes.
[INFO] [stdout] 21 | | #[repr(C)]
[INFO] [stdout] 22 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 23 | | pub struct NodeHeaderEuclidean {
[INFO] [stdout] 24 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 25 | |     bias: f32,
[INFO] [stdout] 26 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/manhattan.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct NodeHeaderManhattan {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/manhattan.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / /// The header of Manhattan leaf nodes.
[INFO] [stdout] 20 | | #[repr(C)]
[INFO] [stdout] 21 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 22 | | pub struct NodeHeaderManhattan {
[INFO] [stdout] 23 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 24 | |     bias: f32,
[INFO] [stdout] 25 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/reader.rs:276:16
[INFO] [stdout]     |
[INFO] [stdout] 276 |     pub fn nns(&self, count: usize) -> QueryBuilder<D> {
[INFO] [stdout]     |                ^^^^^                   --------------- the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 276 |     pub fn nns(&self, count: usize) -> QueryBuilder<'_, D> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/roaring.rs:19:27
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn bytes_encode(item: &Self::EItem) -> Result<Cow<[u8]>, BoxedError> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^            --------- the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn bytes_encode(item: &Self::EItem) -> Result<Cow<'_, [u8]>, BoxedError> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:22:26
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Self>>, SizeMismatch>;
[INFO] [stdout]    |                          ^^^^^            -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Self>>, SizeMismatch>;
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn from_slice(slice: &[f32]) -> Cow<UnalignedVector<Self>>;
[INFO] [stdout]    |                          ^^^^^^     -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn from_slice(slice: &[f32]) -> Cow<'_, UnalignedVector<Self>>;
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:67:30
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Codec>>, SizeMismatch> {
[INFO] [stdout]    |                              ^^^^^            --------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Codec>>, SizeMismatch> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:73:30
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn from_slice(slice: &[f32]) -> Cow<UnalignedVector<Codec>> {
[INFO] [stdout]    |                              ^^^^^^     --------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn from_slice(slice: &[f32]) -> Cow<'_, UnalignedVector<Codec>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/binary_quantized.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                          ^^^^^            -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/f32.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                          ^^^^^            -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/f32.rs:25:26
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn from_slice(slice: &[f32]) -> Cow<UnalignedVector<Self>> {
[INFO] [stdout]    |                          ^^^^^^     -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn from_slice(slice: &[f32]) -> Cow<'_, UnalignedVector<Self>> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/binary_quantized_cosine.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NodeHeaderBinaryQuantizedCosine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/binary_quantized_cosine.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / /// The header of `BinaryQuantizedCosine` leaf nodes.
[INFO] [stdout] 22 | | #[repr(C)]
[INFO] [stdout] 23 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 24 | | pub struct NodeHeaderBinaryQuantizedCosine {
[INFO] [stdout] 25 | |     norm: f32,
[INFO] [stdout] 26 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/binary_quantized_euclidean.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NodeHeaderBinaryQuantizedEuclidean {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/binary_quantized_euclidean.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / /// The header of `BinaryQuantizedEuclidean` leaf nodes.
[INFO] [stdout] 23 | | #[repr(C)]
[INFO] [stdout] 24 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 25 | | pub struct NodeHeaderBinaryQuantizedEuclidean {
[INFO] [stdout] 26 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 27 | |     bias: f32,
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/binary_quantized_manhattan.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct NodeHeaderBinaryQuantizedManhattan {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/binary_quantized_manhattan.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / /// The header of BinaryQuantizedEuclidean leaf nodes.
[INFO] [stdout] 22 | | #[repr(C)]
[INFO] [stdout] 23 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 24 | | pub struct NodeHeaderBinaryQuantizedManhattan {
[INFO] [stdout] 25 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 26 | |     bias: f32,
[INFO] [stdout] 27 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/cosine.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct NodeHeaderCosine {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/cosine.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / /// The header of Cosine leaf nodes.
[INFO] [stdout] 20 | | #[repr(C)]
[INFO] [stdout] 21 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 22 | | pub struct NodeHeaderCosine {
[INFO] [stdout] 23 | |     norm: f32,
[INFO] [stdout] 24 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/dot_product.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NodeHeaderDotProduct {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/dot_product.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / /// The header of DotProduct leaf nodes.
[INFO] [stdout] 23 | | #[repr(C)]
[INFO] [stdout] 24 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 25 | | pub struct NodeHeaderDotProduct {
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | |     norm: f32,
[INFO] [stdout] 29 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/euclidean.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct NodeHeaderEuclidean {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/euclidean.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | / /// The header of Euclidean leaf nodes.
[INFO] [stdout] 21 | | #[repr(C)]
[INFO] [stdout] 22 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 23 | | pub struct NodeHeaderEuclidean {
[INFO] [stdout] 24 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 25 | |     bias: f32,
[INFO] [stdout] 26 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/distance/manhattan.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct NodeHeaderManhattan {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^ field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `check` is never used
[INFO] [stdout]   --> src/distance/manhattan.rs:19:1
[INFO] [stdout]    |
[INFO] [stdout] 19 | / /// The header of Manhattan leaf nodes.
[INFO] [stdout] 20 | | #[repr(C)]
[INFO] [stdout] 21 | | #[derive(Pod, Zeroable, Debug, Clone, Copy)]
[INFO] [stdout] 22 | | pub struct NodeHeaderManhattan {
[INFO] [stdout] 23 | |     /// An extra constant term to determine the offset of the plane
[INFO] [stdout] 24 | |     bias: f32,
[INFO] [stdout] 25 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/reader.rs:276:16
[INFO] [stdout]     |
[INFO] [stdout] 276 |     pub fn nns(&self, count: usize) -> QueryBuilder<D> {
[INFO] [stdout]     |                ^^^^^                   --------------- the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 276 |     pub fn nns(&self, count: usize) -> QueryBuilder<'_, D> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/roaring.rs:19:27
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn bytes_encode(item: &Self::EItem) -> Result<Cow<[u8]>, BoxedError> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^            --------- the same lifetime is hidden here
[INFO] [stdout]    |                           |
[INFO] [stdout]    |                           the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn bytes_encode(item: &Self::EItem) -> Result<Cow<'_, [u8]>, BoxedError> {
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:22:26
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Self>>, SizeMismatch>;
[INFO] [stdout]    |                          ^^^^^            -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Self>>, SizeMismatch>;
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn from_slice(slice: &[f32]) -> Cow<UnalignedVector<Self>>;
[INFO] [stdout]    |                          ^^^^^^     -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn from_slice(slice: &[f32]) -> Cow<'_, UnalignedVector<Self>>;
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:67:30
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Codec>>, SizeMismatch> {
[INFO] [stdout]    |                              ^^^^^            --------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 67 |     pub fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Codec>>, SizeMismatch> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/mod.rs:73:30
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn from_slice(slice: &[f32]) -> Cow<UnalignedVector<Codec>> {
[INFO] [stdout]    |                              ^^^^^^     --------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                              |
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 73 |     pub fn from_slice(slice: &[f32]) -> Cow<'_, UnalignedVector<Codec>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/binary_quantized.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                          ^^^^^            -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/f32.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                          ^^^^^            -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn from_bytes(bytes: &[u8]) -> Result<Cow<'_, UnalignedVector<Self>>, SizeMismatch> {
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unaligned_vector/f32.rs:25:26
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn from_slice(slice: &[f32]) -> Cow<UnalignedVector<Self>> {
[INFO] [stdout]    |                          ^^^^^^     -------------------------- the same lifetime is hidden here
[INFO] [stdout]    |                          |
[INFO] [stdout]    |                          the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 25 |     fn from_slice(slice: &[f32]) -> Cow<'_, UnalignedVector<Self>> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.96s
[INFO] running `Command { std: "docker" "inspect" "54fbe30601e6f9e4df931fbe748de7202a9c0bd3a4eb9be26b7233ccf21f6701", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "54fbe30601e6f9e4df931fbe748de7202a9c0bd3a4eb9be26b7233ccf21f6701", kill_on_drop: false }`
[INFO] [stdout] 54fbe30601e6f9e4df931fbe748de7202a9c0bd3a4eb9be26b7233ccf21f6701
